import request from '@/utils/request'

export function createOrder(data) {
  return request({
    url: '/order',
    method: 'post',
    data
  })
}

export function getOrder(id) {
  return request({
    url: `/order/${id}`,
    method: 'get'
  })
}

export function listOrders(params) {
  return request({
    url: '/order/list',
    method: 'get',
    params
  })
}

export function cancelOrder(id, remark) {
  return request({
    url: `/order/cancel/${id}`,
    method: 'post',
    params: { remark }
  })
}

// 获取当前配爬员的订单列表（已接单的订单）
export function getClimberOrders() {
  return request({
    url: '/order/climber/orders',
    method: 'get'
  })
}

// 获取附近待接单的订单（首页显示）
export function getNearbyOrders() {
  return request({
    url: '/order/nearby',
    method: 'get'
  })
}

// 配爬员接单
export function acceptOrder(id) {
  return request({
    url: `/order/accept/${id}`,
    method: 'post'
  })
}

// 配爬员开始服务（将订单状态改为进行中）
export function startOrder(id) {
  return request({
    url: `/order/start/${id}`,
    method: 'post'
  })
}

// 用户支付完成（修改订单支付状态为已支付）
export function payOrder(id, payData) {
  return request({
    url: `/order/pay/${id}`,
    method: 'post',
    data: payData
  })
}

// 查询订单所需积分
export function getPointsRequired(id) {
  return request({
    url: `/order/points-required/${id}`,
    method: 'get'
  })
}

// 积分支付订单（后端会自动根据订单金额计算积分，1元=1积分）
export function payOrderWithPoints(id) {
  return request({
    url: `/order/pay/points/${id}`,
    method: 'post'
  })
}


